.TH std::error_condition::error_condition 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::error_condition::error_condition \- std::error_condition::error_condition

.SH Synopsis
   error_condition() noexcept;                                \fB(1)\fP \fI(since C++11)\fP
   error_condition( int val, const error_category& cat )      \fB(2)\fP \fI(since C++11)\fP
   noexcept;
   template< class ErrorConditionEnum >                       \fB(3)\fP \fI(since C++11)\fP
   error_condition( ErrorConditionEnum e ) noexcept;
   error_condition( const error_condition& other ) = default; \fB(4)\fP \fI(since C++11)\fP
                                                                  (implicitly declared)
   error_condition( error_condition&& other ) = default;      \fB(5)\fP \fI(since C++11)\fP
                                                                  (implicitly declared)

   Constructs new error condition.

   1) Default constructor. Initializes the error condition with generic category and
   error value 0.
   2) Initializes the error condition with error value val and error category cat.
   3) Initializes the error condition with enum e. Effectively calls
   make_error_condition that is only found by argument-dependent lookup for e. This
   overload participates in overload resolution only if
   std::is_error_condition_enum<ErrorConditionEnum>::value is true.
   4,5) Implicitly defined copy constructor and move constructor. Initializes the error
   condition with the contents of the other.

.SH Parameters

   other - another error condition to initialize with
   val   - error value
   cat   - error category
   e     - error condition enum

   Defect reports

   The following behavior-changing defect reports were applied retroactively to
   previously published C++ standards.

      DR    Applied to            Behavior as published              Correct behavior
   LWG 3629 C++11      only std::make_error_condition overloads     ADL-found overloads
                       were used                                    are used

.SH See also

   make_error_condition(std::errc)        creates an error condition for an errc value
   \fI(C++11)\fP                                e
                                          \fI(function)\fP
   make_error_condition(std::io_errc)     constructs an iostream error condition
   \fI(C++11)\fP                                \fI(function)\fP
   make_error_condition(std::future_errc) constructs a future error_condition
   \fI(C++11)\fP                                \fI(function)\fP
